from learning_agent import LearningAgent
from nearest_neighbor import NearestNeighbor
from learning_BoW import BagOfWords 
from random import choice
from one_agent_accurcy import AgentTester
from agent1 import Agent1


class Agent2(LearningAgent):
    '''
    Agent1 is sort of a class for generating classes. you inherit for it and 
    then use the classmethod set to set the parameter (the number of features).
    '''
    @classmethod
    def set(self, number_of_features):
        self.number_of_features = number_of_features
    
    def createFeatureExtractor(self):
        return BagOfWords()
    
    def createClassifier(self):
        return NearestNeighbor()
    
    def __str__(self):
        return 'Agent2'
